package NewCharacter.Demo2_download;

import com.sun.xml.internal.bind.v2.model.annotation.RuntimeAnnotationReader;

public class TesUSB {

    //使用匿名内部类的形式创建一个USB接口的实现类的实例化对象
    public void useUDisk_class(){

        USB uDisk = new USB(){

            @Override
            public boolean download(String data) {
                if(null != data && !data.equals("")){
                    return true;
                }else {
                    return false;
                }
            }
        };

    }

    //使用匿名函数的形式创建一个 USB 接口的实现类的实例化对象
    public void useUDist_function(){

        //相当于重写了USB接口中的download方法
        USB uDisk = (data) -> {
            if(null != data && !data.equals("")){
                return true;
            }else {
                return false;
            }
        };

        //使用匿名函数的省略模式重写USB接口中的download方法
        USB MP3 = data -> true;


    }


    public static void main(String[] args) {

        //使用匿名内部类的形式实现run方法
        new Thread(
            new Runnable() {
                @Override
                public void run() {

                }
            }
        );

        //使用匿名函数的形式实现run方法
        new Thread(
            () -> {
                System.out.println("hahaah");
            }
        );
    }


}


